Voicemail system with quality assurance

ABSTRACT

In one embodiment, a method for ensuring quality of a media message is provided. The method includes receiving information for a media message. At least a portion of the media is analyzed to determine a media quality for the media message. The method then determines if the media quality is acceptable. If the media quality is not acceptable, then an alert may be sent regarding the media quality of the media message. For example, a caller may be prompted to re-record a media message.

TECHNICAL FIELD

Particular embodiments generally relate to telecommunications.

BACKGROUND

As callers leave media messages using a media system, most systemsmonitor the power of the recorded message. If the power of the messageis below a preconfigured threshold, the media system alerts the callerthat the recipient may have a hard time understanding the message. Forexample, the media system may play a suitable prompt, such as “We didnot receive your message. Please press 1 and re-record the message atthe sound of the beep.”

Power monitoring is used because old systems wanted to save disk spaceand because this simple measurement requires little CPU processingpower. Measuring the power may be acceptable for detecting silence;however, additional factors may affect the quality of a media messageother than power. Thus, even if power is monitored, a recipient maystill not be able to understand a media message.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an example system for providing quality assurance for amedia system.

FIG. 2 shows an example of a method for determining voice quality.

FIG. 3 depicts a more detailed example of the media system.

DESCRIPTION OF EXAMPLE EMBODIMENTS Overview

In one embodiment, a method for ensuring voice quality of a mediamessage is provided. The method includes receiving information for amedia message. At least a portion of the information is analyzed todetermine voice quality for the media message. The method thendetermines if the voice quality is acceptable. If the voice quality isnot acceptable, then an alert may be sent regarding the voice quality ofthe media message. For example, a caller may be prompted to re-record amedia message.

Example Embodiments

FIG. 1 depicts an example system 100 for providing quality assurance fora voicemail system 102. A caller end point 104 may contact voicemailsystem 102. A caller may use caller end point 104 to record/leave amessage for a recipient. A recipient may use a recipient device 106 tolisten to a media message left using voicemail system 102.

Voicemail system 102 may be any system that allows media messages to berecorded. For example, voicemail system 102 may include a media isconnected to caller end point 104. A caller may then use caller endpoint 104 to record and store a media message with voicemail system 102.Although a “voicemail system” is discussed, it will be understood thatany system that can store media for quality analysis may be used, suchas a unified messaging system, instant messaging system, etc. The mediamessage may include any data in any form. For example, the media messagemay be a voice message, video message, any multimedia message, etc.

Caller end point 104 may be any device/application that can leave/recorda media message. For example, caller end point 104 may include acellular phone, PSTN phone, instant messaging client with voice enabled,laptop computer application, VoIP telephone, video phone, etc.

In one embodiment, caller end point 104 may attempt to contact arecipient. If the recipient does not answer the call, then voicemailsystem 102 picks up the call (e.g., the call is redirected to avoicemail server).

Voicemail system 102 includes an interactive voice response (IVR) systemthat may allow a caller to leave a media message for the recipient. Amenu system is provided that allows the caller to record/leave a mediamessage.

Particular embodiments analyze information for a media message beingleft to determine the media message's media quality. Media quality ismeasured in real-time as a caller leaves a message that is audible(i.e., has enough power) but the media quality may be poor. The mediaquality may be any analysis on the quality of the media message. Forexample, the recording quality of the media message is analyzed. Thismay analyze the voice quality of the media message. Further, the mediaquality may analyze other aspects of the media quality, such as whetherthe video can be understood (either voice or video quality). If amessage is considered to have poor media quality, the message may behard to understand for various reasons. For example, when a caller isusing a cellular phone, there may be a poor connection when leaving themessage. Thus, the caller's voice may be muffled, garbled, roboticsounding, etc. When a recipient listens to a media message with poormedia quality, the recipient may not be able to understand or comprehendwhat the caller has sent e.g., what the caller has spoken, sent in avideo, etc.). This is different than when the power is low in thateither nothing was said or the recipient cannot hear audio in the mediamessage that was left.

When the voicemail system 102 determines that the media quality isunacceptable for a media message, then it may send an alert indicatingthat the media quality is not acceptable. For example, voicemail system102 may send a prompt to a caller indicating that the media quality isnot acceptable and suggest that the caller may want to re-record a newmessage. Accordingly, the caller may record another message in place ofthe already left message.

FIG. 2 shows an example of a method 200 for determining media quality.Step 202 receives media for a media message. The media received for themedia message may be media from the actual media message being left bythe caller. For example, packets of media may be received with audioinformation for the media message. Also, the information may be dataother than the actual media message spoken by the caller. For example,the information may be numbers of packets lost, transmission channelerrors, a noise reading, transcoding information, delay in packets beingsent, short-term and long-term warping of a speech signal, a frequencysignature of the media, a speech recognition of the audio of the mediamessage, etc.

Step 204 then analyzes the information media quality. Various methodsmay be used to analyze the media quality. For example, voice qualityalgorithms that measure the quality of voice may be used. In oneembodiment, algorithms described in the standards ITU P.VTQ or P.563 foranalyzing voice quality (VQ) may be used. An example of the P.563standard is described in ITU P.563 recommendation “Single-ended Methodfor Objective Speech Quality Assessment in Narrow-band Telephonyapplications”, which is incorporated by reference in their entirety forall purposes.

In one embodiment, the algorithms may accurately detect the following:impairments of packet loss and packet loss concealment with code-excitedlinear prediction (CELP) codecs, transmission channel errors,environmental noise at the sending side, transcodings, effect of varyingdelay on listening quality in absolute category rating (ACR) tests,short-term time warping of a speech signal, long-term time warping of aspeech signal, etc. Other impairments may also be detected. For example,a robotic voice signature that may be caused by packet loss concealmentmay also be detected.

Other analysis may also be used. For example, natural languagerecognition (NLR) may be used to parse the recorded media message. Ifvoicemail system 102 has difficulty deciphering parts of the message,then it may be determined that the media quality is poor.

In another embodiment, voicemail system 102 may identify segments in themedia message that contain poor media quality by estimating poorcellular connectivity. For example, certain signature or frequencies ofa spectrum filter suggest that voice may be distorted.

Further, packet loss concealment may be used. In VoIP, packets may belost along the way to voicemail system 102. If enough packets are lost,then it may be assumed that there is poor media quality.

In another specific embodiment, step 204 may utilize video qualityanalyzing algorithms. Various methods may be used to analyze the videoquality. For example, video quality algorithms that measure the qualityof video may be used. In one embodiment, algorithms described in thestandards ITU STUDY GROUP 9 of the Video Quality Experts Group (VQEG)for analyzing video quality (VQ) may be used. The “final Report from theVideo Quality Experts Group on the Validation of Objective Models ofVideo Quality Assessment” is incorporated by reference in their entiretyfor all purposes. This report describes the results of the evaluationprocess of objective video quality models as submitted to the VideoQuality Experts Group (VQEG). The report describes models to be used inthe calculation of objective scores for comparison with subjectiveevaluation over a broad range of video systems and source sequences.

Step 206 then determines if the media quality is acceptable. Forexample, the analysis in step 204 may provide a measurement data point.This data point may be compared to a threshold to determine whether themedia quality is acceptable or not. For example, if a number of packetsare lost above a certain threshold, it may be determined that the mediaquality is poor. Also, any of the impairments discussed above may becompared to a threshold to determine if media quality is poor or not.Further, in speech recognition, if a large number of words are notrecognized above a threshold, then it may be determined that therecipient may have trouble understanding the media message and thus itmay be considered of poor media quality.

In one embodiment, segments of a media message may be analyzed for mediaquality. Instead of analyzing the entire message as a whole, shortsegments may be analyzed for media quality rather than analyzing theaverage overall quality of a media message. For example, voicemailsystem 102 may treat the overall media message as a sequence of a numberof segments and may measure the media quality of each segment. Ifvoicemail system 102 determines that any of the segments include poormedia quality, then these segments may be flagged as being of poor mediaquality. However, segments that are of acceptable media quality may notbe flagged.

If the media message is considered acceptable, step 208 accepts themedia message. For example, the whole media message or none of thesegments of the media message may have been considered to be poor.

If the media message is not considered acceptable, then step 210performs an action in response to the poor quality determination, suchas sending an alert indicating that it was determined that the mediamessage was not considered acceptable. If the entire message isconsidered poor (or the determination was averaged for the entire mediamessage), then the caller may be asked to re-record the media messageagain. Also, different way of treating segments of poor quality may beused. For example, the caller may be asked to re-record the segmentsthat were considered of a poor quality. Also, the caller may be able tore-record the entire message from the beginning even though only a fewsegments were considered unacceptable.

Another option may be that the caller can listen to the segments or theentire media message and determine if the media quality is acceptable.If the media quality is acceptable, the caller may commit it tovoicemail system 102. If the media quality is not acceptable, then thecaller may re-record a new message.

A selective analysis of media quality may also be performed. Forexample, voicemail system 102 may detect when a media message is beingleft from a medium that may result in poor media quality. In oneexample, voicemail system 102 may detect that a caller is leaving amessage from a mobile phone. This may be performed by using the callerID of incoming calls to determine if the call originates from a mobilephone. Thus, users in media in which it is not likely that poor mediaquality results may not have to deal with false positives indicatingthat media quality is poor. For example, callers using PSTN telephonesmay not need to have their media quality analyzed. Also, carriers mayprovide analysis on certain calls, such as a phone company may providequality assurance on calls between two end points it owns. This mayprovide better voice quality for customers using the same phone company.However, if the call is from an end point from another carrier, thequality assurance may not be provided.

FIG. 3 depicts a more detailed example of voicemail system 102. Asshown, a media quality analyzer 302 and a media quality alerter 304 areprovided. Media quality analyzer 302 is configured to receiveinformation for the media message. Media quality analyzer 302 thenanalyzes the information for media quality. It can then determine if themedia quality is acceptable or not.

If the media quality is not acceptable, then media quality alerter 304is configured to alert a caller of the poor media quality. Media qualityalerter 304 may then give the caller options of checking the media formedia quality, re-recording the message, etc.

Accordingly, particular embodiments provide many advantages. When acaller leaves a media message and hangs up, the caller cannot go backand change the message that has been left in the recipient's voicemailbox. Thus, it is important to ensure that the media quality of the mediamessage being left is acceptable while the caller is connected tovoicemail system 102. Thus, real time media quality assurance isprovided using particular embodiments. If it is detected that mediaquality is poor, then the caller may be alerted before disconnectingfrom voicemail system 102. This may allow a caller to re-record a mediamessage if the media quality is poor. This ensures that media messagesleft are of good voice quality.

Checking the quality of a recorded message is useful as new media arebeing used to make calls, such as VoIP, cellular, video phones, landmobile radios (LMR), etc. These new media may not be as reliable asother technologies. Further, the intercommunication between end pointsin different mediums may not always produce the highest quality voicecalls. Thus, ensuring that voice quality is acceptable may be moreimportant than detecting silence (e.g. the power).

Also, particular embodiments may be useful when quality assurance isimperative in media recordings. For example, some fields requirerecording and storing of all media messages for regulatory or legalreasons. Also, for legal reasons, some companies may need to keep mediamessages. If the stored messages have poor voice quality, theirusefulness may be degraded. Thus, techniques to ensure good recordingquality are desirable.

Although the description has been described with respect to particularembodiments thereof, these particular embodiments are merelyillustrative, and not restrictive. For example, although media messagesare described, any message may be analyzed using particular embodiments.

Any suitable programming language can be used to implement the routinesof particular embodiments including C, C++, Java, assembly language,etc. Different programming techniques can be employed such as proceduralor object oriented. The routines can execute on a single processingdevice or multiple processors. Although the steps, operations, orcomputations may be presented in a specific order, this order may bechanged in different particular embodiments. In some particularembodiments, multiple steps shown as sequential in this specificationcan be performed at the same time. The sequence of operations describedherein can be interrupted, suspended, or otherwise controlled by anotherprocess, such as an operating system, kernel, etc. The routines canoperate in an operating system environment or as stand-alone routinesoccupying all, or a substantial part, of the system processing.Functions can be performed in hardware, software, or a combination ofboth. Unless otherwise stated, functions may also be performed manually,in whole or in part.

In the description herein, numerous specific details are provided, suchas examples of components and/or methods, to provide a thoroughunderstanding of particular embodiments. One skilled in the relevant artwill recognize, however, that a particular embodiment can be practicedwithout one or more of the specific details, or with other apparatus,systems, assemblies, methods, components, materials, parts, and/or thelike. In other instances, well-known structures, materials, oroperations are not specifically shown or described in detail to avoidobscuring aspects of particular embodiments.

A “computer-readable medium” for purposes of particular embodiments maybe any medium that can contain, store, communicate, propagate, ortransport the program for use by or in connection with the instructionexecution system, apparatus, system, or device. The computer readablemedium can be, by way of example only but not by limitation, anelectronic, magnetic, optical, electromagnetic, infrared, orsemiconductor system, apparatus, system, device, propagation medium, orcomputer memory.

Particular embodiments can be implemented in the form of control logicin software or hardware or a combination of both. The control logic,when executed by one or more processors, may be operable to perform thatwhat is described in particular embodiments.

A “processor” or “process” includes any human, hardware and/or softwaresystem, mechanism or component that processes data, signals, or otherinformation. A processor can include a system with a general-purposecentral processing unit, multiple processing units, dedicated circuitryfor achieving functionality, or other systems. Processing need not belimited to a geographic location, or have temporal limitations. Forexample, a processor can perform its functions in “real time,”“offline,” in a “batch mode,” etc. Portions of processing can beperformed at different times and at different locations, by different(or the same) processing systems.

Reference throughout this specification to “one embodiment”, “anembodiment”, “a specific embodiment”, or “particular embodiment” meansthat a particular feature, structure, or characteristic described inconnection with the particular embodiment is included in at least oneembodiment and not necessarily in all particular embodiments. Thus,respective appearances of the phrases “in a particular embodiment”, “inan embodiment”, or “in a specific embodiment” in various placesthroughout this specification are not necessarily referring to the sameembodiment. Furthermore, the particular features, structures, orcharacteristics of any specific embodiment may be combined in anysuitable manner with one or more other particular embodiments. It is tobe understood that other variations and modifications of the particularembodiments described and illustrated herein are possible in light ofthe teachings herein and are to be considered as part of the spirit andscope.

Particular embodiments may be implemented by using a programmed generalpurpose digital computer, by using application specific integratedcircuits, programmable logic devices, field programmable gate arrays,optical, chemical, biological, quantum or nanoengineered systems,components and mechanisms may be used. In general, the functions ofparticular embodiments can be achieved by any means as is known in theart. Distributed, networked systems, components, and/or circuits can beused. Communication, or transfer, of data may be wired, wireless, or byany other means.

It will also be appreciated that one or more of the elements depicted inthe drawings/figures can also be implemented in a more separated orintegrated manner, or even removed or rendered as inoperable in certaincases, as is useful in accordance with a particular application. It isalso within the spirit and scope to implement a program or code that canbe stored in a machine-readable medium to permit a computer to performany of the methods described above.

Additionally, any signal arrows in the drawings/Figures should beconsidered only as exemplary, and not limiting, unless otherwisespecifically noted. Furthermore, the term “or” as used herein isgenerally intended to mean “and/or” unless otherwise indicated.Combinations of components or steps will also be considered as beingnoted, where terminology is foreseen as rendering the ability toseparate or combine is unclear.

As used in the description herein and throughout the claims that follow,“a”, “an”, and “the” includes plural references unless the contextclearly dictates otherwise. Also, as used in the description herein andthroughout the claims that follow, the meaning of “in” includes “in” and“on” unless the context clearly dictates otherwise.

The foregoing description of illustrated particular embodiments,including what is described in the Abstract, is not intended to beexhaustive or to limit the invention to the precise forms disclosedherein. While specific particular embodiments of, and examples for, theinvention are described herein for illustrative purposes only, variousequivalent modifications are possible within the spirit and scope, asthose skilled in the relevant art will recognize and appreciate. Asindicated, these modifications may be made to the present invention inlight of the foregoing description of illustrated particular embodimentsand are to be included within the spirit and scope.

While particular embodiments have been described herein with referenceto voice, video, and media, it will be appreciated that any of theembodiments is equally applicable to any of these media and whenapplicable the words voice, video, and media are interchangeable.

Thus, while the present invention has been described herein withreference to particular embodiments thereof, a latitude of modification,various changes and substitutions are intended in the foregoingdisclosures, and it will be appreciated that in some instances somefeatures of particular embodiments will be employed without acorresponding use of other features without departing from the scope andspirit as set forth. Therefore, many modifications may be made to adapta particular situation or material to the essential scope and spirit. Itis intended that the invention not be limited to the particular termsused in following claims and/or to the particular embodiment disclosedas the best mode contemplated for carrying out this invention, but thatthe invention will include any and all particular embodiments andequivalents falling within the scope of the appended claims.

1. A method comprising: receiving media for a media message; analyzingat least a portion of the media to determine a media quality for themedia message; determining if the media message quality is acceptable;and sending an alert regarding quality of the message if it isdetermined the quality is not acceptable.
 2. The method of claim 1,wherein the media message comprises audio or video information receivedfrom a caller leaving the media message, wherein determining if themedia message quality is acceptable comprises determining if a qualitymeasurement of the audio or video information is acceptable.
 3. Themethod of claim 1, wherein the determining and sending are performedbefore a caller disconnects with a voicemail server.
 4. The method ofclaim 1, wherein sending the alert comprises sending a message to acaller leaving the media message indicating the media quality isdetermined to be not acceptable.
 5. The method of claim 4, furthercomprising providing the caller an option to re-record the mediamessage.
 6. The method of claim 1, wherein analyzing at least a portionof the media to determine the media quality for the media messagecomprises determining a media quality measurement value, whereindetermining if media quality is acceptable comprises comparing mediaquality measurement value to a threshold to determine if the mediaquality is acceptable or not.
 7. The method of claim 1, whereinanalyzing at least a portion of the media to determine the media qualityfor the media message comprises: analyzing one or more segments of themedia message; and determining the media quality for the one or moresegments of the media message.
 8. The method of claim 7, furthercomprising sending an alert for a segment in the one or more segments ifthe segment is determined to have media quality that is unacceptable. 9.The method of claim 1, wherein analyzing at least a portion of theinformation to determine the media quality for the media messagecomprises using natural language recognition to determine the voicequality.
 10. The method of claim 1, wherein analyzing at least a portionof the media to determine the media quality for the media messagecomprises using real-time voice quality algorithms to determine themedia quality.
 11. An apparatus comprising: one or more processors; andlogic encoded in one or more tangible media for execution by the one ormore processors and when executed operable to: receive media for a mediamessage; analyze at least a portion of the media to determine a mediaquality for the media message; determine if the media quality isacceptable; and send an alert regarding the media quality of the mediamessage if it is determined the media quality is not acceptable.
 12. Theapparatus of claim 11, wherein the media message comprises audio orvideo information received from a caller leaving the media message,wherein the logic to determine if the media message quality isacceptable comprises determining if a quality measurement of the audioor video information is acceptable.
 13. The apparatus of claim 11,wherein the logic to determine and send is executed before a callerdisconnects with a voicemail server.
 14. The apparatus of claim 11,wherein the logic when executed is further operable to send a message toa caller leaving the media message indicating the media quality isdetermined to be not acceptable.
 15. The apparatus of claim 14, whereinthe logic when executed is further operable to provide the caller anoption to re-record the media message.
 16. The apparatus of claim 11,wherein the logic when executed is further operable to determining amedia quality measurement value, wherein determine if the media qualityis acceptable comprises comparing the media quality measurement value toa threshold to determine if the media quality is acceptable or not. 17.The apparatus of claim 11, wherein the logic when executed is furtheroperable to: analyze one or more segments of the media message; anddetermine the media quality for the one or more segments of the mediamessage.
 18. The apparatus of claim 17, wherein the logic when executedis further operable to send an alert for a segment in the one or moresegments if the segment is determined to have media quality that isunacceptable.
 19. The apparatus of claim 11, wherein the logic whenexecuted is further operable to use natural language recognition todetermine the media quality.
 20. The apparatus of claim 11, wherein thelogic when executed is further operable to use real-time media qualityalgorithms to determine the media quality.
 21. An apparatus comprising:means for receiving media for a media message; means for analyzing atleast a portion of the media to determine a media quality for the mediamessage; means for determining if the media message quality isacceptable; and means for sending an alert regarding quality of themessage if it is determined the quality is not acceptable.